.scrollbar {
  @--scrollbar-background-color: rgba(144, 147, 153, 0.3);
  @--scrollbar-hover-background-color: rgba(144, 147, 153, 0.5);

  overflow: hidden;
  position: relative;

  .scrollbar__bar {
    position: absolute;
    right: 2px;
    bottom: 2px;
    z-index: 1;
    border-radius: 4px;
    opacity: 0;
    transition: opacity 120ms ease-out;

    &.is-vertical {
      width: 6px;
      top: 2px;

      > div {
        width: 100%;
      }
    }

    &.is-horizontal {
      height: 6px;
      left: 2px;

      > div {
        height: 100%;
      }
    }
  }

  &:hover,
  &:active,
  &:focus {
    > .scrollbar__bar {
      opacity: 1;
      transition: opacity 340ms ease-out;
    }
  }

  .scrollbar__view {
    height: 100%;
  }

  .scrollbar__wrap {
    overflow: scroll;
    height: 100%;
  }

  .scrollbar__wrap--hidden-default {
    &::-webkit-scrollbar {
      width: 0;
      height: 0;
    }
  }

  .scrollbar__thumb {
    position: relative;
    display: block;
    width: 0;
    height: 0;
    cursor: pointer;
    border-radius: inherit;
    background-color: @--scrollbar-background-color;
    transition: 0.3s background-color;

    &:hover {
      background-color: @--scrollbar-hover-background-color;
    }
  }
}
